import { S } from '../../s';
import { IPSChartCoordinateSystemCartesian2D } from './ipschart-coordinate-system-cartesian2-d';
import { IPSChartGrid } from './ipschart-grid';
import { PSDEChartCoordinateSystemImplBase } from './psdechart-coordinate-system-impl-base';

export class PSDEChartCoordinateSystemCartesian2DImpl
  extends PSDEChartCoordinateSystemImplBase
  implements IPSChartCoordinateSystemCartesian2D
{
  protected pschartgrid: IPSChartGrid;
  getPSChartGrid(): IPSChartGrid | null {
    return (
      this.pschartgrid ||
      (this.pschartgrid = this.fillObjectModel(
        S._f7,
        this.M.getPSChartGrid,
        S._2fa,
      ) as IPSChartGrid)
    );
  }
  get cls(): string {
    return 'PSDEChartCoordinateSystemCartesian2DImpl';
  }
  instanceof(cls: string): boolean {
    if (cls == S._e7) return true;
    return super.instanceof(cls);
  }
}
